Transducers all suck

They really, really do.

Ok, alright... that's a bit harsh. I'll specify a bit further - voltage output transducers all suck!

Analog to digital

In the digital world that we now live in, things are all made up of bits. When you take an analog signal and try to chop it up to fit within a set of binary bits... you're bound to lose some resolution. This is exactly the reason why purist musicians and audiophiles don't like newfangled digital gear.

When using transducers that have a voltage output, you're usually looking at some kind of range between round numbers. For example +/-5 volts. How well does that range of 10 volts translate to a base-2 number? It's not a solution to $2^{n}$, so not very well... This leads me to quick bit of math regarding linear interpolation.

If we have two sets of known measurement ranges that are linear, then we can interpolate the measurement from it's original input range to another output range using a bit of simple math.

The formula for linear interpolation is:

$$ y = y_{1} + \frac{(x - x_{1})(y_{2} - y_{1})}{x_{2} - x_{1}} $$

You have a range of input volages, let's say $x_{1}$ is 0V and $x_{2}$ 120V. Similarly, we have a range of output voltages given by the nameplate of the transducer, such as $y_{1}$ is -5V and $y_{2}$ is +5V. By simply plugging in your measurement from the input side of the transducer into the equation as $x$, you'll be able to see where that input lands within the output range of $y_{1}$ to $y_{2}$.

While this is a powerful tool and is used in more places than I could ever imagine, it still chaps me that I get stuck dealing with transducers that don't output something like the 4-20mA current output that would make things so much easier in this digital world! It's fairly standard in other industries to use his 16mA range because it:

  • Scales easily within a 16-bit range for translation to a digital system
  • Shows a bad circuit when lacking 4mA of current

Please allow me to explain further.

The ideal 'ducer

In my line of work, the 'lingua franca' is the DNP3 protocol. Oftentimes, we're sending 16-bit analog values back to the control center. Notice what the range of that current-output transducer is? Wow, a perfectly matched 16 mA range! It would be fantastic to have a value coming off of that transducer that was 1-to-1 scaled when we swap it over to the digital domain.

This post is a work in progress, more to come.